<!DOCTYPE html>
<!-- ======================================================================= -->
<!--                        r e l e a s e s . h t m l                        -->
<!-- ======================================================================= -->
<html>
    <head>
        <title>Audiveris - Releases</title>
        <script>
            context = {page: "Releases", root: "../../"};
        </script>
        <meta name="classification" content="Documentation on Audiveris releases" />
        <meta name="description" content="Details on Audiveris roadmap" />

        <meta name="author" content="Hervé Bitteur" />
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">        
        <link rel="icon" href="docs/images/audiveris-icons-256.ico" type="image/x-icon" />

        <script src="https://java.com/js/deployJava.js"></script>

        <link rel="stylesheet" href="../../branding/css/global.css"/>
        <link rel="stylesheet" href="../../branding/css/left-nav.css" />
        <link rel="stylesheet" href="../../branding/css/top-nav.css"/>
        <link rel="stylesheet" href="../../branding/css/expansion.css"/>
        <style type="text/css">
            /*<![CDATA[*/

            article {
                transition:all .5s ease;
            }
            article:target {
                margin-top: 2em;
                margin-bottom: 2em;
                background-color: #fffaf2;
                border-radius: 12px;
                box-shadow: 0px 4px 4px 2px rgba(45,20,6,0.8);
            }

            h3 {
                font-size: 1em;
            }

            .label {
                clear: left;
                float: left;
                width: 150px;
                color: #aa0000;
            }
            .desc {
                position: relative;
                right: 0;
                margin: 0 0 10px 160px;            
                padding: 0 10px 0 10px;
                border: 1px solid #ffdddd;
                background-color: #fffff4;
            }

            .left-column ul li ul {
                margin-left: 20px;
            }

            /*]]>*/
        </style>
    </head>

    <body>
        <script src="../../branding/js/expansion.js"></script> 
        <script src="../../branding/js/header.js"></script> 
        <div class="main">
            <span id="top"></span>

            <h1>Releases</h1>

            <!-- =========================================================== -->
            <article id="R4.3" >

                <h3>
                    4.3 Release
                </h3>

                <div class="">

                    <div class="date">
                        26-Nov-2013
                    </div>
                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        The release results from the adoption of Java Web Start
                        to provide a single and consistent way to download / 
                        install / run Audiveris.
                        <br/>
                        <i>NOTA:</i> This release should be the last one in the
                        4.x series.
                        Development of Audiveris 5.x has begun, with the main
                        objective to support even poor-quality scores.

                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Installation:</b> Regardless of the 
                                underlying OS (Windows or Linux) and
                                architecture (32-bit or 64-bit), Audiveris 
                                software is now made available via a single 
                                entry point on its web site.
                                
                                This takes care of all dependencies 
                                (Java runtime, C++ runtime, binary libraries,
                                Tesseract languages, etc).                                
                            </li>
                        </ul>
                    </div>
                </div>
            </article>

            <!-- =========================================================== -->
            <article id="R4.2" >

                <h3>
                    4.2 Release
                </h3>

                <div class="">

                    <div class="date">
                        7-Dec-2012
                    </div>
                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        The major features of this release were made possible thanks
                        to the interfacing of new Google Tesseract C++ code (v3.x).
                        The too few members of Tesseract project had no time to 
                        provide a clean DLL interface of their new version.
                        <br/>
                        Kudos to Maxim Polijakovski for this long awaited bridge and
                        for the configuration of Audiveris on provided OSes and 
                        machine architectures.
                        <br/>
                        Many thanks also to Ryo Hang who took the initiative to
                        address non-uniform gray images and came out with the
                        prototype of an adaptive binarization filter.
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Installation:</b> Major OSes
                                <code>Windows</code> and <code>Linux</code> and 
                                machine architectures <code>x86</code> and 
                                <code>x64</code> are supported via dedicated 
                                installers.                             
                                The installers take care of all Audiveris
                                dependencies (Java runtime, C++ runtime, musical 
                                font, etc).
                                <br>
                                Nota: Support for <code>MacOS</code> has been 
                                dropped from the scope of this release to avoid 
                                further delays.

                            </li>
                            <li>
                                <b>OCR:</b> A few selected languages are 
                                pre-installed with Audiveris distribution 
                                (<code>deu</code>, <code>eng</code>, 
                                <code>fra</code>, <code>ita</code>).
                                Additional languages can be supported by 
                                downloading the related trained data from the
                                dedicated
                                <a href="http://code.google.com/p/tesseract-ocr/downloads/list">
                                    Tesseract web page</a>.
                            </li>
                            <li>
                                <b>NetBeans:</b> A pre-populated 
                                <code>nbproject</code> folder provides NetBeans 
                                support out-of-the-box.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>OCR:</b> <code>Tesseract V3.02</code> has been 
                                integrated in place of oldish V2.04 version.
                                This much more powerful engine has led to a 
                                global redesign of text handling within Audiveris. 
                                There is now a dedicated <code>TEXTS</code> step 
                                which performs a layout analysis
                                on each whole system image and transcribes the 
                                identified textual items.
                                Note also that several languages can be selected at
                                the same time.
                            </li>
                            <li>
                                <b>Binarization:</b> Extracting foreground pixels
                                from the background has long been performed using
                                a <code>global</code> threshold on pixel gray value.
                                Even images with non-uniform illumination can now be
                                processed with an <code>adaptive</code> filter which
                                takes into account the neighborhood of the current
                                pixel.
                            </li>
                            <li>
                                <b>Glyph recognition:</b> The major part of neural 
                                network input consists in moments which capture 
                                glyph key characteristics.
                                Former <code>Hu</code> geometric moments have been 
                                replaced by <code>ART</code> moments 
                                (Angular Radial Transform, as used by MPEG-7) 
                                which are less sensible to noise.
                            </li>
                            <li>
                                <b>Plugins:</b> Audiveris MusicXML output can be
                                "piped" to external softwares such as score editors
                                or MIDI sequencers, through a flexible plugin 
                                mechanism.
                                Consequently, these features have been removed from
                                Audiveris application.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>PDF input:</b> Several free Java libraries have 
                                been tested (<code>PDFRenderer</code> for a long 
                                time, then <code>JPedal</code> and 
                                <code>PDFBox</code>) but none was really 
                                satisfactory. 
                                Hence support for PDF input is now delegated to a 
                                <code>Ghostscript</code> sub-process, a fully 
                                functional and perennial solution.
                            </li>                       
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Doc:</b> A comprehensive Handbook is now available
                                from Audiveris web page, as well as the API JavaDoc
                                of the current release.
                                The former installation tab is now merged with the
                                first chapter of the handbook.
                            </li>
                            <li>
                                <b>Wiki:</b> The online Audiveris Wiki contains
                                detailed documentation about how to process each
                                score of the set of examples available on
                                <a href="http://www.makemusic.com/musicxml/music/example-set">
                                    MakeMusic/Recordare site</a>.
                                It is also used to gather information about
                                evolutions being considered for Audiveris 
                                software.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>

            <!-- =========================================================== -->
            <article id="R4.1">
                <h3>
                    4.1 Release
                </h3>
                <div class="">
                    <div class="date">
                        12-Oct-2011
                    </div>
                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        The main improvement in Audiveris processing stems from  
                        the use of filaments organized in a kind of grid. 
                        This grid serves as a referential for the following tasks,
                        and provides an elegant approach for skewed or distorted 
                        images.
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        Several installation files have been published, all using 
                        the 4.1beta core name.
                        This reflects the status of continuous development rather
                        than stable release of the software.
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Filaments:</b> They are long glyphs representing 
                                the core of either horizontal or vertical lines
                                (staff lines candidates and barlines candidates
                                respectively).
                                These filaments are formalized in natural splines,
                                which are sequences of Bézier curves with continuity
                                up to the second derivative.
                            </li>
                            <li>
                                <b>Grid:</b> The staff lines and barlines are 
                                connected into a grid of sometimes rather wavy lines. 
                                The grid itself is taken as the referential 
                                for all the other glyphs, whatever the potential
                                skew or other distortion of the image, and thus
                                saving the need for any pre-processing.
                                Moreover, one can on demand easily build and save a
                                "dewarped" version of the initial image.
                            </li>
                            <li>
                                <b>Scale:</b> Additional key informations are 
                                derived from run length histograms (jitter on staff
                                line thickness and spacing, typical beam height, 
                                whether the image is music or not, ...).
                            </li>
                            <li>
                                <b>Systems:</b> The boundary between two consecutive
                                systems is now a broken line, resulting from the 
                                incremental inclusion of glyphs into their nearest 
                                system.
                            </li>
                            <li>
                                <b>Training:</b> Besides full sheets taken as 
                                training samples, the user can select a mode that
                                takes every manual assignment as a new training 
                                sample.
                            </li>
                            <li>
                                <b>Symbols:</b> The <code>HEAD_AND_FLAG</code>
                                family of compound symbols no longer exists, thanks 
                                to an aggressive strategy in glyph split pattern.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>OCR:</b> We are still stuck to the old 
                                <code>Tesseract</code> version (2.04). 
                                The new Tesseract generation (3.x) has
                                been out for more than one year now but still lacks
                                a Java connection under Windows.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Time:</b> All time values, such as offsets within
                                a measure, are computed using rational values, 
                                which makes them independent of the score divisions 
                                value.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>

            <!-- =========================================================== -->
            <article id="R4.0">

                <h3>
                    4.0 Release
                </h3>

                <div class="">
                    <div class="date">
                        24-Dec-2010
                    </div>
                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        The most prominent feature is the redesign of Audiveris
                        display which combines sheet and score elements into a 
                        single view. This improves clarity and saves real estate.
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>                       
                                <b>Display:</b> The main application window has
                                been simplified. 
                                Only two views are now shown for each sheet: 
                                <code>Picture</code> (focused on input image) and
                                <code>Data</code> (focused on items detected). 
                                We no longer have separate windows for sheet and 
                                score.
                                The score elements are displayed in a translucid 
                                manner on top of the sheet glyphs they represent, 
                                in order to visually catch any discrepency. 
                                Separate voices can be displayed each in a specific
                                color.
                                <br/>                            
                                Every other window (<code>Log</code>, 
                                <code>Errors</code>, <code>Boards</code>) can be
                                displayed or hidden, and each individual board
                                can be selected at will.<br/>
                            </li>
                            <li>
                                <b>Font:</b> Former symbol bitmaps have been dropped
                                for the use of a TrueType music font 
                                (<code>Stoccata.ttf</code> then 
                                <code>MusicalSymbols.ttf</code>).
                                This allows endless zooming of displays and 
                                printouts with no loss of quality.
                                <br/>
                                The font is even used to build artificial symbols
                                used for initial training of the neural network.
                            </li>
                            <li>
                                <b>Print:</b> Ability to print the resulting score
                                into a PDF file.
                            </li>
                            <li>
                                <b>Multi-page:</b> Multi-page images (using PDF or 
                                TIFF format) can be transcribed to multi-page
                                scores in memory.
                                <br/>
                                A disk-based prototype version, using a map/reduce 
                                approach, allows to combine existing MusicXML pages 
                                into a single score.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>


            <!-- =========================================================== -->
            <article id="R3.4" >

                <h3>
                    3.4 Release
                </h3>

                <div class="">
                    <div class="date">
                        22-Aug-2010
                    </div>
                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        This release is focused on user interface, with drag n' drop
                        features from a shape palette and a tight connection between
                        the MIDI player and Audiveris display.
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Libraries:</b> All the external jars (23
                                as of this writing) needed to rebuild and/or
                                run Audiveris are now provided in a
                                dedicated /lib folder available in the
                                download area. A developer can still pick up
                                a newer jar version from the Internet.
                            </li>
                            <li>
                                <b>Player:</b> The XenoPlay MusicXML player
                                has been replaced by a better player, named
                                Zong!, still developed by Andreas
                                Wenger.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Bench data:</b> To allow the analysis of
                                multiple batch runs, and compare the recognition
                                efficiency, each sheet processing can log key
                                data in a dedicated file. For the same purpose,
                                time-out values can be defined for script or
                                step processing.
                            </li>
                            <li>
                                <b>Bar Lines:</b> The user can now interactively
                                assign / deassign a bar line that defines parts,
                                thus recreating the systems from scratch.
                            </li>
                            <li>
                                <b>Constants:</b> All application constants can
                                now be set from the CLI with the -option
                                keyword. This complements the ability to set
                                them from the Tools | Options UI menu.
                            </li>
                            <li>
                                <b>Dots:</b> Support for double dots, ability
                                to assign the role of any dot
                                (augmentation, repeat bar line, staccato,
                                ...)
                            </li>
                            <li>
                                <b>Horizontals:</b> Horizontal entities
                                (ledgers, endings) can now be forced or
                                deassigned manually.
                            </li>
                            <li>
                                <b>MIDI Player:</b> The MIDI playback is now
                                driven from a separate console window, borrowed
                                from Zong! player.
                            </li>
                            <li>
                                <b>OCR:</b> Tesseract OCR is now available under
                                both Windows and Linux.
                            </li>
                            <li>
                                <b>Score:</b> From a dedicated Shape palette,
                                the user can Drag n' Drop a (virtual) glyph to
                                either the score view or the sheet view, thus
                                injecting entities directly into the score
                                structure.
                            </li>
                            <li>
                                <b>ScoreView:</b> The zoom of the score view can
                                now be adjusted at will, thanks to a slider and
                                better symbol bitmap definitions. A next version
                                will replace them with the use of Stocatta
                                true-type font.
                            </li>
                            <li>
                                <b>Time Signature:</b> The user can now enter
                                any custom time signature, defining numerator
                                and denominator values explicitly.
                            </li>
                            <li>
                                <b>Time Slots:</b> Within a measure, the time
                                slots are meant to gather notes that begin at
                                the same moment in time. The user can now choose
                                at the score level the policy for determining
                                the time slots, either through stem alignment or
                                through note head alignment.
                            </li>
                            <li>
                                <b>Tuplets:</b> 6-tuplets are now supported, as
                                well as tuplets mixing beamed notes with other
                                notes (flagged notes, rests, ...).
                            </li>
                            <li>
                                <b>UI:</b> A new board (Shape palette) is
                                available. It allows drag n' drop for
                                entity injection, easier navigation through
                                shape ranges, and shape assignment by
                                double-click.
                            </li>
                            <li>
                                <b>UI:</b> All boards now have an expand /
                                collapse mechanism, thus allowing to save room
                                in the column of boards.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Player:</b> The Zong! Player is now more
                                tolerant with respect to measure defects. It no
                                longer throws an exception whenever the notes
                                durations within a measure are not consistent with
                                the measure expected duration.
                            </li>
                            <li><b>Player Data:</b> The data part of Zong player
                                is now provided as a resource in a dedicated jar
                                file, thus allowing the launching of Audiveris
                                from any location of your computer.
                            </li>
                            <li>
                                Exception handler have been removed from all
                                unitary tests, so that the results are clearly
                                seen as successes or failures
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Virtual Glyphs:</b> For the time being,
                                the (virtual) glyphs created by direct
                                injection cannot be moved or resized once
                                they have been dropped from the Shape
                                palette to their target view. However, they
                                can be deleted and re-injected (this
                                workaround addresses a move but not a
                                resize).
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Images:</b> Support for most pixel sizes.
                            </li>
                            <li>
                                <b>Lyrics:</b> Much better handling of lyric
                                text pieces, with the ability for the user
                                to enter extension sign or to split words
                                with a space. The OCR can process several
                                text lines as a whole, which often leads to
                                better results.
                            </li>
                            <li>
                                <b>Symbols:</b> The symbols bitmap
                                definitions (in the /symbol folder)
                                have been refined with at least a 16-pixel
                                interline definition, resulting in better
                                display notably in score view.
                            </li>
                            <li>
                                <b>Tiff:</b> Images are forwarded to
                                Tesseract OCR by memory, avoiding temporary
                                files
                            </li>
                        </ul>
                    </div>
                </div>
            </article>

            <!-- =========================================================== -->
            <article id="R3.3">
                <h3 >
                    3.3 Release
                </h3>

                <div class="">
                    <div class="date">
                        09-Jun-2010
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Release 3.3 is the first Audiveris release
                                available on Kenai, a much more convenient
                                environment than former java.net. So the
                                source code is now handled by Mercurial (Hg)
                                instead of CVS and JIRA is the issues
                                manager.
                            </li>
                            <li>The old Audiveris page on java.net now
                                points to the Kenai site. Only the users
                                mailing list has been kept on java.net.
                            </li>
                            <li>With Sun / Oracle integration, java.net is
                                announced to be re-implemented on top of
                                Kenai infrastructure. So, these 2 Audiveris
                                sites should merge one day.
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Libraries:</b> All the external jars (23
                                as of this writing) needed to rebuild and/or
                                run Audiveris are now provided in a
                                dedicated /lib folder available in the
                                download area. A developer can still pick up
                                a newer jar version from the Internet.
                            </li>
                            <li>
                                <b>Player:</b> The XenoPlay MusicXML player
                                has been replaced by a better player, named
                                Zong!, still developed by Andreas
                                Wenger.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Bench data:</b> To allow the analysis of
                                multiple batch runs, and compare the recognition
                                efficiency, each sheet processing can log key
                                data in a dedicated file. For the same purpose,
                                time-out values can be defined for script or
                                step processing.
                            </li>
                            <li>
                                <b>Bar Lines:</b> The user can now interactively
                                assign / deassign a bar line that defines parts,
                                thus recreating the systems from scratch.
                            </li>
                            <li>
                                <b>Constants:</b> All application constants can
                                now be set from the CLI with the -option
                                keyword. This complements the ability to set
                                them from the Tools | Options UI menu.
                            </li>
                            <li>
                                <b>Dots:</b> Support for double dots, ability
                                to assign the role of any dot
                                (augmentation, repeat bar line, staccato,
                                ...)
                            </li>
                            <li>
                                <b>Horizontals:</b> Horizontal entities
                                (ledgers, endings) can now be forced or
                                deassigned manually.
                            </li>
                            <li>
                                <b>MIDI Player:</b> The MIDI playback is now
                                driven from a separate console window, borrowed
                                from Zong! player.
                            </li>
                            <li>
                                <b>OCR:</b> Tesseract OCR is now available under
                                both Windows and Linux.
                            </li>
                            <li>
                                <b>Score:</b> From a dedicated Shape palette,
                                the user can Drag n' Drop a (virtual) glyph to
                                either the score view or the sheet view, thus
                                injecting entities directly into the score
                                structure.
                            </li>
                            <li>
                                <b>ScoreView:</b> The zoom of the score view can
                                now be adjusted at will, thanks to a slider and
                                better symbol bitmap definitions. A next version
                                will replace them with the use of Stocatta
                                true-type font.
                            </li>
                            <li>
                                <b>Time Signature:</b> The user can now enter
                                any custom time signature, defining numerator
                                and denominator values explicitly.
                            </li>
                            <li>
                                <b>Time Slots:</b> Within a measure, the time
                                slots are meant to gather notes that begin at
                                the same moment in time. The user can now choose
                                at the score level the policy for determining
                                the time slots, either through stem alignment or
                                through note head alignment.
                            </li>
                            <li>
                                <b>Tuplets:</b> 6-tuplets are now supported, as
                                well as tuplets mixing beamed notes with other
                                notes (flagged notes, rests, ...).
                            </li>
                            <li>
                                <b>UI:</b> A new board (Shape palette) is
                                available. It allows drag n' drop for
                                entity injection, easier navigation through
                                shape ranges, and shape assignment by
                                double-click.
                            </li>
                            <li>
                                <b>UI:</b> All boards now have an expand /
                                collapse mechanism, thus allowing to save room
                                in the column of boards.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                Many fixes, please refer to Hg log command
                            </li>
                            <li><b>Player Data:</b> The data part of Zong player
                                is now provided as a resource in a dedicated jar
                                file, thus allowing the launching of Audiveris
                                from any location of your computer.
                            </li>
                            <li>
                                Exception handler have been removed from all
                                unitary tests, so that the results are clearly
                                seen as successes or failures
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Player:</b> The player raises an
                                exception whenever the notes durations
                                within a measure are not consistent
                                with the measure expected duration,
                                resulting in the unability to play any
                                not-totally-correct score. This is to be
                                fixed in the external Zong! player.
                            </li>
                            <li>
                                <b>Virtual Glyphs:</b> For the time being,
                                the (virtual) glyphs created by direct
                                injection cannot be moved or resized once
                                they have been dropped from the Shape
                                palette to their target view. However, they
                                can be deleted and re-injected (this
                                workaround addresses a move but not a
                                resize).
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Images:</b> Support for most pixel sizes.
                            </li>
                            <li>
                                <b>Lyrics:</b> Much better handling of lyric
                                text pieces, with the ability for the user
                                to enter extension sign or to split words
                                with a space. The OCR can process several
                                text lines as a whole, which often leads to
                                better results.
                            </li>
                            <li>
                                <b>Symbols:</b> The symbols bitmap
                                definitions (in the /symbol folder)
                                have been refined with at least a 16-pixel
                                interline definition, resulting in better
                                display notably in score view.
                            </li>
                            <li>
                                <b>Tiff:</b> Images are forwarded to
                                Tesseract OCR by memory, avoiding temporary
                                files
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R3.2">
                <h3>
                    3.2 Release
                </h3>

                <div class="">
                    <div class="date">
                        19-Nov-2009
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Release 3.2 has been a long work, with a lot of
                                new features. It exhibits a special focus on the
                                integration of the Tesseract public OCR to handle
                                all textual informations, and a significant
                                redesign of key processing steps
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Examples:</b> Included 2 PDF examples
                                (BrahWiMeSample.pdf and Dichterliebe01.pdf) by
                                curtesy of <a href="http://www.recordare.com">
                                    Recordare</a>. They demonstrate rather complex
                                measures in terms of voices.
                            </li>
                            <li>

                                <b>Application:</b> We have switched to the
                                Swing Application Framework, in order to use a
                                standard approach for such tasks as:
                                application lifecycle, resources, actions,
                                session persistency,... all in an
                                OS-independent way. This framework is bypassed
                                when Audiveris runs in batch mode.
                            </li>
                            <li>
                                <b>EventBus:</b> This event bus from Michael
                                Bushe has been added for notification of user
                                selections, using specific user event types.
                            </li>
                            <li>
                                <b>PDFRenderer:</b> The PDFRenderer tool has
                                been added to allow the reading of PDF images.
                            </li>
                            <li>

                                <b>Tesseract:</b> The opensource Tessaract OCR
                                is the engine for text recognition.
                            </li>
                            <li>
                                <b>Tesjeract:</b> Access to Tesseract C++
                                software from Java via a JNI bridge.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Barlines:</b> Systems building and Measure
                                building have been redesigned, to allow easy
                                assignment or deassignment of a measure barline
                                by user interaction. The former BARS step is
                                now split into SYSTEMS and MEASURES steps.
                            </li>
                            <li>
                                <b>Drag'n Drop:</b> Audiveris now supports
                                drag'n drop features, dragging a image file to
                                the Audiveris main window loads the sheet and
                                perform a (customizable) default step.
                            </li>
                            <li>
                                <b>Files:</b> Files for Script, Score export,
                                Midi can be specified via "Save / Save As".
                            </li>
                            <li>
                                <b>Image:</b> PDF format has been added to the
                                collection of image formats that Audiveris can
                                load, thanks to the PDFRenderer companion tool.
                            </li>
                            <li>
                                <b>Midi:</b> The user now has the ability to
                                select and playback just a sequence of
                                measures, besides the whole score.
                            </li>
                            <li>
                                <b>Notations:</b> All raticulations such as
                                legato, staccato, accent, etc are recognized
                                and translated.
                            </li>
                            <li>
                                <b>Patterns:</b> After automatic glyph
                                recognition, a series of tests are gathered in
                                various glyph patterns to handle specific cases
                                (slurs, beams hooks, sharps, naturals, broken
                                clefs, imposed time signatures, etc). Thus the
                                PATTERNS step replaces the former CLEANUP step.
                            </li>
                            <li>
                                <b>Parameters:</b> All major score parameters
                                are gather in a single dialog box for quick
                                update.
                            </li>
                            <li>
                                <b>Parts:</b> Systems can now have different
                                numbers of parts from one system to the other.
                            </li>
                            <li>
                                <b>Score Layout:</b> The user can dynamically
                                change the layout of the score display, and
                                switch between a vertical layout (like the
                                original sheet) and a horizontal layout (more
                                like a timeline).
                            </li>
                            <li>
                                <b>Score Rebuild:</b> The user has the ability
                                to rebuild the score entities at any time. When
                                dealing with very large systems, one can also
                                disable the automatic score rebuild and perform
                                the rebuild manually later when the
                                modifications are completed.
                            </li>
                            <li>
                                <b>Section Selection:</b> Besides glyph
                                selection, the user can now select one or
                                several sections, thus building a glyph by
                                hand. This allows the splitting of glyphs at
                                section borders.
                            </li>
                            <li>
                                <b>Copy/Paste</b> metaphor: The user can copy a
                                shape from an existing glyph and paste it to
                                another glyph.
                            </li>
                            <li>
                                <b>Similar Glyphs:</b> The user can now browse
                                through a sequence of glyphs "similar" to a
                                selected glyph. This is helpful when dealing
                                with similar cases all around a music sheet.
                                The "similarity" is handled by a specific
                                Linear Evaluator since a Neural Network is not
                                linear at all.
                            </li>
                            <li>
                                <b>Slots:</b> Slots with insufficient margins
                                are looked for, because they may indicate a
                                too small slot margin value.
                            </li>
                            <li>
                                <b>Steps:</b> Some steps, the ones that follow
                                the SCORE step, are flagged as not mandatory
                                and can be re-performed at will. The user has
                                bow the ability to reperform (almost) any step.
                            </li>
                            <li>
                                <b>System Boundaries:</b> The boundaries of any
                                system area are now defined by broken lines,
                                that the user can modify by mouse movements.
                                This allows a more flexible definition of which
                                glyphs belong to a system.
                            </li>
                            <li>
                                <b>Text:</b> A whole hierarchy of text items is
                                now defined to precisely handle Lyrics as well
                                as Titles, Directions and the like. The actual
                                text content can be entered manually via the
                                glyph board and automatically via the OCR
                                mechanism.
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Active Glyphs:</b> Use of a reliable test for
                                detecting which glyphs are active in a system.
                            </li>
                            <li>
                                <b>Beams:</b> They do not divide the duration of
                                embraced notes when these ones are rests.
                            </li>
                            <li>
                                <b>Message Log:</b> The Log window now displays
                                all messages, including the ones that were
                                logged before the GUI was launched.
                            </li>
                            <li>
                                <b>Local Browsing:</b> The user is now able to
                                navigate to the Audiveris documentation stored
                                locally in the installation folder.
                            </li>
                            <li>
                                <b>MusicXML Export:</b> Fixed wrong order in
                                elements for lyrics item, which triggered error
                                messages in Finale. Also removed an xmlns:ns2
                                namespace which was legal but not accepted by
                                Finale.
                            </li>
                            <li>
                                <b>Vertex removal:</b> The removal of a vertex
                                sometimes led to a double removal attempt.
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>

                                <b>Injection:</b> The user needs the ability to
                                directly enter score entities of his own. To be
                                addressed in the next release.
                            </li>
                            <li>
                                <b>Parameters:</b> Besides the generic
                                constants mechanism (accessed via Tools |
                                Options menu), we need a more user-oriented way
                                to deal with global parameters. The current
                                ScoreBoard is the first step in this direction.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Bus:</b> Introduced the EventBus companion
                                tool, to replace the proprietary Selection
                                mechanism for handling the notifications of
                                user selections.
                            </li>
                            <li>
                                <b>MusicXML:</b> Upgraded the export step to
                                comply with the new JAXB binding of ProxyMusic.
                            </li>
                            <li>
                                <b>Options:</b> This huge tree / Table has been
                                revamped for better usability.
                            </li>
                            <li>
                                <b>Script:</b> All user actions that may impact
                                the resulting score are continuously recorded
                                in a script in memory, and any such action is
                                in fact implemented as an immediate execution
                                of the ScriptTask instance.
                            </li>
                            <li>
                                <b>Threading:</b> Multi-threading is given much
                                attention, using Brian Goetz JCIP annotations.
                            </li>
                            <li>

                                <b>UML:</b> Used the basic UMLet tool, which is
                                very convenient for simple UML drawings found
                                here and there in Audiveris doc.
                            </li>
                            <li>
                                <b>Statistics:</b> Added on Audiveris home page
                                a link to the Ohloh statistics about this
                                software. Cost is estimated a bit above 1
                                million $, just for the code ...
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R3.1">
                <h3>
                    3.1 Release
                </h3>

                <div class="">
                    <div class="date">
                        28-Jan-2008
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Release 3.1 has focused on user interface and
                                on Midi playback
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Midi:</b> The Midi features are provided via
                                an external component, a Java application named
                                <a href="http://www.xenoage.com/player">XenoPlay</a>
                                from Andreas Wenger. The corresponding jar file
                                is packaged with the other companions tools.
                            </li>

                            <li>
                                <b>SwingWorker:</b> To properly support the Mac
                                platform, for which no Java 6 is available yet,
                                we use the standard implementation of
                                SwingWorker but provided as a stand-alone
                                component.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Plugins:</b> A knowledgeable user has the
                                ability to register additional user actions,
                                related to current Sheet or current Score. The
                                initial version of score Player was implemented
                                like this. Since then, all existing actions
                                have been retrofitted to benefit from the
                                decoupling brought by this plugin mechanism.
                            </li>
                            <li>
                                <b>Player:</b> A tight integration with Xenoage
                                MIDI Player is provided. It enables to playback
                                the whole score, or a range of measure, or just
                                one selected measure using default or
                                customized parameters. The user can enter MIDI
                                parameters to the score, such as tempo,
                                velocity and instruments. Interface with
                                Xenoage player has been enhanced to allow
                                callback from the player in order to move the
                                score view in sync.
                            </li>
                            <li>

                                <b>MIDI export:</b> Besides the score player,
                                we now provide the ability to export the
                                current score to a MIDI file, still using
                                Xenoage software.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Image Format:</b> Audiveris now correctly
                                handles black &amp; white image formats for
                                which a pixel is coded as one bit. Note however
                                that such image must be converted on-the-fly
                                from 1-bit to 1-byte format, which requires
                                additional memory resources.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>OCR:</b> Audiveris is still lacking an OCR
                                engine, but this should be fixed in 3.2
                                release.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>

                            <li>
                                <b>MusicXML:</b> ProxyMusic now handles only
                                the latest version of MusicXML (2.0 as of this
                                writing). The user can still use an external
                                XSLT transform (using 'to11.xsl' sheet for
                                example) if he wishes an older MusicXML
                                version.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R3.0">
                <h3>
                    3.0 Release
                </h3>

                <div class="">
                    <div class="date">
                        29-Jul-2007
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>

                            <li>This 3.0 release is a major release which makes
                                Audiveris a complete music scanner.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>XML binding:</b> No more JiBX or Castor, we
                                now use the standard JAXB 2 for all
                                [un]marshalling tasks, including the score
                                writing delegated to ProxyMusic.
                            </li>
                            <li>
                                <b>Installation:</b> To simplify installation,
                                all companion jar files are stored in the /lib
                                subfolder, with audiveris jar file referring
                                them in its manifest. The only exception is JAI
                                which needs to be specifically installed in JRE
                                or JDK.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Translation:</b> Implementation of
                                translation on the base of extracted symbols.
                            </li>

                            <li>
                                <b>Translation:</b> Storing of the translation
                                result in MusicXML format.
                            </li>
                            <li>
                                <b>GUI:</b> New window dedicated to score view,
                                to more easily check the translation results.
                            </li>
                            <li>
                                <b>Script:</b> A scripting feature allows to
                                record every action made on a given sheet, and
                                to replay and augment the script at will.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        A lot!
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>OCR:</b> We are still looking for an OCR to
                                handle lyrics and other written informations.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>

                            <li>A lot!
                            </li>
                            <li>
                                <b>Parallelism:</b> we now take advantage of
                                multi-processors when available, in the
                                building of lag runs, and in the processing of
                                system symbols.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R2.4">
                <h3>
                    2.4 Release
                </h3>

                <div class="">
                    <div class="date">
                        15-Jan-2006
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>This is a release intended to cleanup major
                                deficiencies before switching to the development of
                                release 3.0 with brand new features.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>XML Mapping:</b> We've dropped Castor for
                                JiBX. JiBX is reported more performant,
                                especially at startup, since the binding is
                                pre-compiled directly in the class byte code.
                                Moreover, JiBX is the XML mapper used by
                                MusicXMLrep which we'll use to handle the
                                mapping to MusicXML format. So instead of the
                                Castor environment, the JiBX one must now be
                                installed (see the <a href="installation.html#OTHER_COMPONENTS">Installation
                                    Manual</a> for details).
                            </li>
                            <li>

                                <b>Tests:</b> The distribution archive now
                                comprises the source code for unit tests, based
                                on the JUnit framework.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>

                                <b>Memory:</b> At last, the origin of memory
                                leak was discovered: it originated in Swing
                                component handling an HTML text. So the
                                workaround has been to simply drop HTML used by
                                FilterBoard in favor of standard JGoodies form
                                fields of CheckBoard.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Java:</b> There are 4 compiler warnings
                                related to generics.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Math:</b> The Line class is now better
                                defined as an interface with a BasicLine
                                implementation which can be used whatever the
                                orientation of the Line.
                            </li>
                            <li>

                                <b>Java:</b> Consistent application of an inner
                                Swing component rather than direct derivation
                                from Swing, except in obvious specializations.
                                Main improvement is visible in Javadocs that
                                used to be filled with Swing inherited members.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R2.3">
                <h3>
                    2.3 Release

                </h3>

                <div class="">
                    <div class="date">
                        10-Nov-2005
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>This release is rather consistent in terms of
                                extraction ratio, thanks to the adoption of CLUTTER
                                and STRUCTURE shapes, and the focus on a single
                                evaluator. Unless a major bug needs to be fixed,
                                this release should conclude the 2.x series focused
                                on symbol extraction.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">
                        <ul>

                            <li>
                                <b>Properties:</b> the user property files,
                                used respectively for build and run phases, are
                                now located within a ".audiveris" folder in
                                ${user.home} directory.
                            </li>
                            <li>
                                <b>Icons:</b> The "Musette" font is no longer
                                used, since it lacked too many symbols.
                                Instead, we now use our own drawing of icons
                                for all shape symbols, using a simple text
                                format for storing icon definitions.
                            </li>
                            <li>
                                <b>Training:</b> A set of representative glyphs
                                is provided as a "core", should the user need
                                to retrain the glyph evaluator. This core is a
                                carefully selected subset of the whole base of
                                glyphs.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>

                            <li>
                                <b>Extraction:</b> Added two specific Shapes,
                                known as CLUTTER and STRUCTURE, so that
                                evaluator can differentiate between a valid
                                symbol and symbols that either should be
                                discarded (Clutter) or kept for later leaves
                                retrievals (Structure).
                            </li>
                            <li>
                                <b>Extraction:</b> Got rid of the Regression
                                evaluator, and organized all recognition steps
                                on the sole use of Neural Network evaluator.
                            </li>
                            <li>
                                <b>GUI:</b> Simplified and rationalized the
                                mouse events related to selection, lasso,
                                etc... It is now possible to incrementally
                                select several glyphs and process them
                                globally. This eases the user actions when
                                manual assignment is needed.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>

                            <li>
                                <b>GUI:</b> Removed duplications of mouse
                                events.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Memory:</b> The memory leak (see previous
                                version) is still to be fixed.
                            </li>
                            <li>
                                <b>Java:</b> There are still 5 compiler
                                warnings related to generics, no harm, but they
                                should be sorted out.
                            </li>
                        </ul>

                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>

                                <b>Icons:</b> To define custom icons, there is
                                a new stand-alone tool (SymbolRipper) which
                                allows to store a symbol representation drawn
                                with help of any suitable installed font.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R2.2">
                <h3>
                    2.2 Release
                </h3> 

                <div class="">
                    <div class="date">
                        31-Aug-2005
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>This is a release still focused on improvement
                                of existing features rather than functional
                                extension.
                            </li>

                            <li>In particular, the attempt to handle clutter as
                                a recognized glyph shape in the neural network (to
                                avoid false positives) has been postponed to next
                                release.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Distribution Changes
                    </div>
                    <div class="desc">

                        <ul>
                            <li>
                                <b>Tools:</b> All the companion tools have been
                                upgraded to their latest version, and the
                                Installation manual updated accordingly.
                            </li>
                            <li>
                                <b>Documentation:</b> The whole set of
                                documentations, including the JavaDoc API, has
                                been organized under the same umbrella to allow
                                convenient access to any piece from the
                                documentation banner.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>Image:</b> Added the conversion from color
                                image to gray-scale image. This operation is
                                launched automatically when a color image is
                                detected at load time.
                            </li>

                            <li>
                                <b>Glyphs:</b> Added a Deassign button in the
                                Glyph board, with action depending upon the
                                glyph at hand (for example deassigning a stem
                                has important consequences, more than for a
                                standalone symbol).
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>
                                <b>GUI:</b> No more toggle button is active for
                                the Bars step, since there were no specific
                                Sections to handle.
                            </li>
                            <li>
                                <b>Documentation:</b> Fixed the use of CVS tags
                                in java files (for version information) which
                                were mistaken with real CVS tags in related
                                javadoc HTML files
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>

                                <b>Memory:</b> There is still a memory leak,
                                since even after current Sheet has been closed,
                                there is still a Sheet instance referenced with
                                Score, related views, etc... Workaround if
                                several Sheets have to be processed
                                interactively is to exit the application after
                                each processing.
                            </li>
                            <li>
                                <b>Documentation:</b> Because of JavaScript
                                building of doc frames, the "Back" and
                                "Forward" commands trigger duplicate frame
                                loads. Function is OK, but this flickering
                                should be avoided.
                            </li>
                            <li>
                                <b>Java:</b> There is still half a dozen of
                                compiler warnings related to unchecked generics
                                assignments, to be cleaned in a next release.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Other Changes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>

                                <b>Verticals:</b> Managing of stems is done as
                                much as possible like other glyphs, since
                                managing separate lists in synch was too much
                                error-prone.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R2.1">
                <h3>
                    2.1 Release
                </h3>

                <div class="">
                    <div class="date">
                        03-Jun-2005
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>This release is a small improvement on the
                                initial 2.0 release, with major focus on user
                                documentation, especially the Operation manual.
                            </li>

                        </ul>
                    </div>
                    <div class="label">
                        New Features
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Added documentation environment (installation,
                                operation, design, implementation).
                            </li>
                            <li>Added a nearly complete Operation manual.
                            </li>
                            <li>Added the handling of a Core base, besides the
                                Whole glyph base, to speed-up the training of the
                                neural network.
                            </li>

                            <li>Added the use of manifest parameters to
                                automate the handling of tool name, version and
                                build reference.
                            </li>
                            <li>Added in the Regression evaluator the ability
                                to measure distance to a given shape, as a way to
                                select members for the Core base.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Bug Fixes
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Fixed a bug in resource names due to improper
                                use of backslashes.
                            </li>
                            <li>Fixed the loading of unsupported image formats,
                                by simply detecting the event and notifying it to
                                the user.
                            </li>
                        </ul>
                    </div>
                    <div class="label">
                        Known Issues
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Audiveris should be able to convert an
                                unsupported image format to the desired one (grey
                                scale of 256 values).
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R2.0">
                <h3>
                    2.0 Release
                </h3>

                <div class="">
                    <div class="date">
                        05-May-2005
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>This release is the result of the strong need
                                to formally publish the Audiveris software, even
                                though there are still many areas with lots of room
                                for improvement. Publishing the software, with
                                source code and a minimal documentation, was
                                necessary to let other potential developers
                                contribute to this project.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>
            <!-- =========================================================== -->
            <article id="R1">
                <h3>
                    1.0 Release
                </h3>

                <div class="">
                    <div class="date">
                        ca. 2000
                    </div>

                    <div class="label">
                        Introduction
                    </div>
                    <div class="desc">
                        <ul>
                            <li>Prior to Audiveris, the author had built an OMR
                                prototype called OptiMusic and developed 
                                using the Ada technology.
                            </li>
                            <li>OptiMusic could be considered as version 1.0 of 
                                Audiveris.
                            </li>
                        </ul>
                    </div>
                </div>
            </article>

            <!-- =========================================================== -->

            <script src="../../branding/js/footer.js"></script> 
        </div>

        <!-- Table of content in left-column -->
        <div class="left-column">
            <nav>
                <p style="text-align: right;"><a href="#top">Top</a></p>
                <ul class="toc">
                    <li>
                        <input type="button"  value="+" class="expander" onclick="toggleInput(this)">
                        R4
                        <div class="expandable">                            
                            <ul>
                                <li><a href="#R4.3">4.3</a></li>
                                <li><a href="#R4.2">4.2</a></li>
                                <li><a href="#R4.1">4.1</a></li>
                                <li><a href="#R4.0">4.0</a></li>
                            </ul>
                        </div>
                    </li>
                    <li>
                        <input type="button"  value="+" class="expander" onclick="toggleInput(this)">
                        R3
                        <div class="expandable">                            
                            <ul>
                                <li><a href="#R3.4">3.4</a></li>
                                <li><a href="#R3.3">3.3</a></li>
                                <li><a href="#R3.2">3.2</a></li>
                                <li><a href="#R3.1">3.1</a></li>
                                <li><a href="#R3.0">3.0</a></li>
                            </ul>
                        </div>
                    </li>
                    <li>
                        <input type="button"  value="+" class="expander" onclick="toggleInput(this)">
                        R2
                        <div class="expandable">                            
                            <ul>
                                <li><a href="#R2.4">2.4</a></li>
                                <li><a href="#R2.3">2.3</a></li>
                                <li><a href="#R2.2">2.2</a></li>
                                <li><a href="#R2.1">2.1</a></li>
                                <li><a href="#R2.0">2.0</a></li>
                            </ul>
                        </div>
                    </li>
                    <li>
                        <input type="button"  value="+" class="expander" onclick="toggleInput(this)">
                        R1
                        <div class="expandable">                            
                            <ul>
                                <li><a href="#R1">OptiMusic</a></li>
                            </ul>
                        </div>
                    </li>
                </ul>
            </nav>
        </div>

        <script>
            smoothExpansion = true;
            collapseAll();
        </script>
    </body>
</html>

